package com.itcast.service;

import com.itcast.pojo.*;

import java.util.List;

public interface EmpService {
    /**
     * 分页查询(条件)
     * @param param
     * @return
     */
    PageBean pageQuery(EmpQueryParam param);

    /**
     * 新增员工(并添加日志到emp_log表)
     * @param empDto
     * @return
     */
    void add(EmpDto empDto) throws Exception;

    /**
     * 批量删除
     * @param ids
     */
    void delete(List<Integer> ids);

    /**
     * 根据Id查询
     * @param id
     * @return
     */
    EmpDto getById(Integer id);

    /**
     * 修改员工
     * @param empDto
     * @return
     */
    void update(EmpDto empDto);

    /**
     * 员工职位统计
     * @return
     */
    EmpJobData empJobData();

    /**
     * 员工性别统计
     * @return
     */
    List<EmpGenderData> empGenderData();

    /**
     * 查询所有员工
     * @return
     */
    List<Emp> list();

    /**
     * 员工登录
     * @param emp
     * @return
     */
    LoginInfo login(Emp emp);

    /**
     * 日志信息的分页查询
     * @return
     */
    PageBean logList(Integer page, Integer pageSize);

    /**
     * 修改用户密码
     * @param changePwd
     * @return
     */
    void changePwd(ChangePwd changePwd);
}
